阅读更多
毫无疑问,ruby on rails这个号称开发速度10倍于Java的快速web开发框架是2005年2006年连续两年web应用开发领域最大的奇迹。自从2004年7月ruby on rails第一个版本发布以来,ruby on rails以令人惊讶的速度迅速征服了web应用开发领域,在2006年3月毫无悬念的获得了第16届Jolt大奖的web开发工具奖项;rails的作者DHH(David Heinemeier Hansson)也因此得到了巨大的荣誉,2006年8月荣获OSCON(全球开源大会)年度最佳黑客;而依靠ruby on rails起家,开发web2.0互联网应用的37signals公司则得到了Amazon创始人Jeff Bezos的投资,Bezos本人则对ruby on rails相当看好,计划推出基于ruby on rails的Hosting服务。

在2005年和2006年,整个ruby社区和rails社区也呈现出来爆炸性的发展趋势,并且诸多Java社区,敏捷社区的德高望众的人士例如Andrew Hunt,Bruce Tate,Martin Folwer纷纷投身ruby和rails社区,这恐怕不单单用开发速度快就能够解释的了。

《Agile Web Development with Rails》这本书的名字其实就已经很好的揭示了ruby on rails流行和获得社区认可的一个很重要原因,那就是“Agile”。随着互联网web2.0时代的来临,对于应用软件行业来说,也越来越需要能够灵活应变需求,能够快速开发,能够迅速提供用户反馈的软件发展趋势。例如我们可以观察到IBM的企业文化叫做“随需应变”,HP的企业文化叫做“动成长”,而BEA的企业文化叫做“流体思维”,角度虽然不同,但是无一不是揭示出来软件发展的趋势,即“Agile”,能够灵活应变的本领。而ruby on rails框架正是顺应了“Agile”的大势,才得以迅速走红的。

ruby on rails在国内一个可以参考的成功案例就是JavaEye2.0网站:
http://www.iteye.com
三个资深的Java程序员,在没有ruby on rails项目开发经验的情况下,仅仅使用了一个月时间,就完成了包括论坛,博客,招聘等多种功能融合一体的综合性技术网站的设计,开发,测试,迁移和部署上线运营,在使用其他web开发技术的情况下,这么快的开发速度是不可想象的。目前JavaEye2.0网站的服务器每天要处理超过15万ruby动态请求,独立访问IP也超过了1万。

如果要学习ruby on rails,《Agile Web Development with Rails》是不容错过的。这本书的作者Dave Thomas也是著名的敏捷宣言成员之一,在技术出版行业久负盛名,也正是由于Dave Thomas在2000年出版的《Programming ruby》一书,将默默无闻的ruby编程语言带入到了全球知名的高度。也正是这本经典教材《Agile Web Development with Rails》促进了ruby on rails的普及程度,本书也同时获得了第16届Jolt大奖的General Technical Book大奖,可谓实至名归。

《Agile Web Development with Rails》前面12章不是按部就班介绍rails框架,而是一上来就开始手把手教你快速开发一个Depot的迷你购物系统。然后才是rails框架每个部分的详细讲解和剖析,最后两章是web开发的安全性问题和应用部署调优,附录还有一些rails配置的介绍和ruby编程语言的快速入门。这种行文的结构非常符合初学者的学习习惯,先通过一个案例从整体上快速把握和了解一个技术的大致情况,然后才是每个部分深入学习,最后的web安全性和应用部署调优的章节特别值得大家仔细去阅读和学习,这部分内容往往是web开发人员比较薄弱的知识环节,附录的ruby编程语言快速入门可以让你扫平阅读本书的基础知识方面的障碍,因此从本书的目录结构来看,作者也是匠心独运。

《Agile Web Development with Rails》这本书的中文版《应用Rails进行敏捷Web开发》在2006年8月就已经上市,由林芷薰翻译。译者到是名不见经传,但是这本书的翻译相当到位,不得不赞一句译者投入的精力和翻译的质量。值得一提的是,中文版的翻译并不完全按照英文直接字面翻译,很多地方使用了非常中文口语化的意译,让人看起来感觉十分生动有趣,平添几分轻松感。如果想要ruby on rails快速入门,那么这本书无疑是首选推荐,对于我们JavaEye网站的三个开发人员来说,也是人手一册。如果你没有学习过ruby,那么建议你先快速看一遍附录ruby入门的章节,然后再大致浏览一遍这本书的主要内容,把Depot案例从头到尾做一遍,就可以用rails做项目了。在项目开发过程中遇到问题再回过头来查阅本书,查阅最新的rails API文档,或者通过Google搜索。若是没有这本书的帮助,我们的rails水平进步速度可能也没有这么快吧。

目前《Agile Web Development with Rails》的第二版作者还在撰写过程中,可以通过Amazon网站购买第二版beta版的英文电子书。第二版从我拿到的版本来看,增加了数据库Migration和RJS的章节,其他各个章节也进行了内容的扩充,但是第二版还并没有最后完成,一些内容还是空着的。所以第二版的英文版正式上市时间还很难说,至于相应的中文版,也要等到英文版推出之后了。

因此对于准备学习和掌握ruby on rails的开发人员来说,现在可以购买《应用Rails进行敏捷Web开发》来学习,如果有条件,可以参考第二版英文版的相应章节,了解一下哪些内容进行了扩充和增加。

最后,要想掌握一门编程技术,最重要的还是实践,《应用Rails进行敏捷Web开发》可以带领你入门,然后就要靠你自己的了。
8
2
评论 共 2 条 请登录后发表评论
2 楼 lliiqiang 2014-09-03 09:45
完全不同语言看着费劲,前面的东西用后面的东西不理解,只能分割着看,先留着,但是最好声明一下.
1 楼 dyllove98 2009-12-28 09:00
“号称开发速度10倍于Java的快速web” 这个好像是某位大言不惭的网友说的把,然后被ruby的最捧者当作"神语"一样的崇拜~~ruby on Rails的确很棒~但是没说的那么神

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • Oracle中的rowid

    ROWID是ORACLE中的一个重要的概念。用于定位数据库中一条记录的一个相对唯一地址值。通常情况下,该值在该行数据插入到数据库表时即被确定且唯一。ROWID它是一个伪列,它并不实际存在于表中。它是ORACLE在读取表中数据行时,根据每一行数据的物理地址信息编码而成的一个伪列。所以根据一行数据的ROWID能找到一行数据的物理地址信息。从而快速地定位到数据行。数据库的大多数操作都是通过ROWID来完成的,而且使用ROWID来进行单记录定位速度是最快的。要理解索引,必须先搞清楚ROWID。B-Tree索引的每个索引条目具有两个字段。第一个字段表示索引的键值,对于单列索引来说是一个值;而对于多列索引

  • np.apply_along_axis函数用法

    这个函数的各个参数的含义请大家自行查阅了解,这里只记录一下参数axis的作用。 首先定义一个函数来打印数组的shape与内容,然后生成一个4x3的数组array: def print_a(array): print("shape: %s, array is \n%s"%(array.shape, array)) array=np.array([[2,3,4],[3,4,5],[6,7,8],[7,8,9]]) 对这个数组调用np.apply_along_axis函数,看该函数会对数组产生什么作用

  • python中apply函数

    函数原型 DataFrame.apply(func, axis=0, broadcast=False, raw=False, reduce=None, args=(), **kwds) 1.该函数最有用的是第一个参数,这个参数是函数,相当于C/C++的函数指针。 2.这个函数需要自己实现,函数的传入参数根据axis来定,比如axis = 1,就会把一行数据作为Series的数据 结构传入给自己实...

  • idea的debug快捷键

    idea的debug快捷键

  • NumPy学习笔记(二)

    numpy索引;numpy切片;numpy数组迭代;np.apply_along_axis()聚合函数

  • IDEA 常用快捷键以及调试

    用了这么久的IDEA还没有正经总结过自己使用过的快捷键,以及正经调试过一次代码,今天不读源码,来总结一下这个检测工具的使用。

  • IntelliJ IDEA 206 个快捷键大全,动图演示!搬砖杠杠的!

    IntelliJ IDEA相关快捷键的使用

  • Oracle中ROWID的使用

    在上述代码中,将table_name替换为实际表的名称,column1、column2等替换为实际的列名,value1、value2等替换为实际的值,'AAAAAAAABBBBBBBBRRRR’替换为实际的ROWID值。执行此更新语句后,将会更新具有匹配ROWID的行的数据。在上述代码中,将table_name替换为实际表的名称,以及’AAAAAAAABBBBBBBBRRRR’替换为实际的ROWID值。在Oracle数据库中,每一行都有一个唯一的ROWID,它是一个字符串,用于标识数据库中的特定行。

  • IDEA中常用的调试快捷键

    快捷键可以帮助你更有效调试代码,逐步执行代码并检查变量值,以及快速定位和解决问题.不过,一些快捷键可能会因为IDE版本或者个人设置而有所不同,但以上是一般情况下的默认设置。在代码行号左侧双击,或者使用。在调试模式下,选中变量,然后。

  • oracle中rowid的用法 (全面)

    oracle中rowid的用法 分类: Oracle Fundamental 2013-10-25 14:52 34人阅读 评论(0) 收藏 举报 ROWID数据块DUMPBASE64编码 ROWID是数据的详细地址,通过rowid,oracle可以快速的定位某行具体的数据的位置。 ROWID可以分为物理rowid和逻辑rowid两种。普通的堆表中的ro

  • python中numpy.apply_along_axis()函数的用法

    1.函数原型 numpy.apply_along_axis(func, axis, arr, *args, **kwargs) 2.作用: 将arr数组的每一个元素经过func函数变换形成的一个新数组 3.参数介绍: 其中func,axis,arr是必选的 func是我们写的一个函数 axis表示函数func对arr是作用于行还是列 arr便是我们要进行操作的数组了 可选参数:*args, **k...

  • 金蝶专业版过账提示运行时错误5_金蝶KIS专业版常见故障及解决办法

    金蝶KIS专业版常见故障及解决办法金蝶KIS专业版常见故障有哪些你知道吗?你对金蝶KIS专业版常见故障了解吗?你知道如何解决金蝶KIS专业版常见故障吗?下面是yjbys小编为大家带来的关于金蝶KIS专业版常见故障的知识,欢迎阅读。一、操作中提示:“当前使用的功能与其他用户有冲突,目前无法使用。”答:在 开始--程序-- 金蝶KIS专业版--工具--系统工具--系统工具--网络控制工具--打开,登录...

  • oracle 切割 rowid,Oracle中rowid的用法(全面)

    ROWID是数据的详细地址,通过rowid,Oracle可以快速的定位某行具体的数据的位置。ROWID可以分为物理rowid和逻辑rowid两种。普通的堆表中的rowid是物理rowid,索引组织表(IOT)的rowid是逻辑rowid。oracle提供了一种urowid的数据类型,同时支持物理和逻辑rowid。本文主要关注物理rowid物理rowid又分为扩展rowid(extended row...

  • IDEA快捷键大全

    IntelliJ IDEA快捷键大全、快捷键使用教程

  • 西北工业大学cpSkill平台Python作业NOJ(81-90)

    仅供参考 前20传送门:https://blog.csdn.net/weixin_43520256/article/details/109137288 21-30传送门:https://blog.csdn.net/weixin_43520256/article/details/109137366 41-50传送门:https://blog.csdn.net/weixin_43520256/article/details/109137411 61-70传送门:https://blog.csdn.net/wei

  • idea断点调试继续执行快捷键(keymap设置了eclipse)

    快捷键 功能描述 F6 单步调试,不进入函数内部 F5 单步调试,进入函数内部 Shift+F7 选择要进入的函数 Shift+F8 跳出函数 Alt+F9 运行到断点 Alt+F8 执行表达式查看结果 F9 继续执行,进入下一个断点或执行完程序 Ctrl+F8 设置/取消当前行断点 Ctrl+Shif...

  • 在linux下安装windows系统--仅仅支持efi主板+gtp+U盘安装

    本人已经安装成功: 材料: 1. U盘 2.电脑,bios支持efi shell 3.win8-x86-64位安装镜像cn_windows_8_1_x64_dvd_2707237.iso 4.EFI_SHELL64.zip 步骤: 0.将U盘格式化为Fat32格式,如果已经是这个格式的话,只要清干净就可以。 1.将安装镜像解压到U盘中。直接挡在根目录下。 2.将E

  • 先装Linux后装Windows系统的解决方法

    一般情况下先装windows后装linux都没有什么问题,linux引导系统都会友好地添加windows启动记录, 先装linux后装windows则很多人都说不行, windows会用自己地引导记录覆盖已有的linux, 难道windows不能像linux一样保留其他系统地引导记录吗?! 最近一次电脑中勒索病毒,丢失了很多资料, 下决心换病毒风险小的linux,结果发现有很多不便之处,还是

Global site tag (gtag.js) - Google Analytics